package com.yingyi.basic.service;

import com.yingyi.basic.exception.BusinessException;
import com.yingyi.basic.query.BaseQuery;
import com.yingyi.basic.util.PageList;

import java.util.List;

public interface IBaseService <T>{
    T queryById(Long id);

    List<T> queryAll();

    void insert(T t);

    void update(T t);

    void delete(Long id);

    /**
     * 分页：查询当前页数据
     */
    PageList<T> queryData(BaseQuery query);

    /**
     * 分页：条件查询结果总数量
     * @param query
     * @return
     */

    /**
     * 批量删除
     * @param ids
     */
    void patchDelete(List<Long> ids);
}
